package com.dragon.refect.bytecode;

/**
 * 现代JVM在执行java代码的时候，通常都会将解释执行与编译执行二者结合起来进行。
 *
 * 所谓解释执行，就是通过解释器来读取字节码，遇到相应的指令就会去执行该指令。
 * 所谓编译执行，就是通过即时编译器(Just In Time, JIT)将字节码转化为本地机器码来执行。现代JVM会根据代码热点来生成
 * 相应的本地机器码。
 *
 * 基于栈的指令集与基于寄存器的指令集之间的关系：
 *
 * 1. JVM执行指令时所采取的方式是基于栈的指令集。
 * 2. 基于栈的指令集的主要的操作有入栈与出栈两种。
 * 3. 基于栈的指令集的优势在于它可以在不同的平台之间移植，而基于寄存器的指令集是与硬件紧密关联的，无法可以做到可移植性。
 * 4. 基于栈的指令集的缺点在于完成相同的操作，指令数量要比基于寄存器的指令集数量要多；基于栈的指令集是在内存中完成操作的
 *  而基于寄存器的指令集是直接由CPU来执行的，他是在高速缓冲区中执行的，速度要快很多。虽然虚拟机可以采用一些优化手段，但总体来说，
 *  基于栈的指令集的执行速度要慢一些。
 *
 *
 * @author dragon
 * @since 2019/12/9
 */
public class MyTest6 {


}
